#ifndef ASSET_H_
#define ASSET_H_

// By: Jesse Guarascia de Urena
// Asset Base Class
// All assets must inherit this class
// Used for debugging

#include <string>

class Asset
{
protected:
	bool created; // W-o-N the asset was properly created
	bool loaded; // W-o-N the asset has been loaded

	std::string fileLoc; // File location of the asset

public:
	Asset(void);
	virtual ~Asset(void);

	virtual std::string Debug() = 0; // Call up the debug function for the asset (must be implemented)

	// Get/Set the created flag
	inline bool isCreated() { return created; }
	inline void SetCreated(bool _created) { created = _created; }
	
	// Get the file location
	inline std::string FileLoc() { return fileLoc; }
	inline bool isLoaded() { return loaded; }
};

#endif // ASSET_H_

